A storage system is a processing system adapted to store and retrieve information/data on storage devices (such as disks). The storage system includes a storage operating system that implements a file system to logically organize the information as a hierarchical structure of directories and files on the storage devices. Each file may comprise a set of data blocks, whereas each directory may be implemented as a specially-formatted file in which information about other files and directories are stored.
The storage operating system generally refers to the computer-executable code operable on a storage system that manages data access and access requests (read or write requests requiring input/output operations) and may implement file system semantics in implementations involving storage systems. In this sense, the Data ONTAP® storage operating system, available from NetApp, Inc. of Sunnyvale, Calif., which implements a Write Anywhere File Layout (WAFL®) file system, is an example of such a storage operating system implemented as a microkernel within an overall protocol stack and associated storage. The storage operating system can also be implemented as an application program operating over a general-purpose operating system, such as UNIX® or Windows®, or as a general-purpose operating system with configurable functionality, which is configured for storage applications as described herein.
A storage system's storage is typically implemented as one or more storage volumes that comprise physical storage devices, defining an overall logical arrangement of storage space. Available storage system implementations can serve a large number of discrete volumes. A storage volume is “loaded” in the storage system by copying the logical organization of the volume's files, data, and directories, into the storage system's memory. Once a volume has been loaded in memory, the volume may be “mounted” by one or more users, applications, devices, and the like, that are permitted to access its contents and navigate its namespace.
A storage system may be configured to allow server systems to access its contents, for example, to read or write data to the storage system. A server system may execute an application that “connects” to the storage system over a computer network, such as a shared local area network (LAN), wide area network (WAN), or virtual private network (VPN) implemented over a public network such as the Internet. The application executing on the server system may send an access request (read or write request) to the storage system for accessing particular data stored on the storage system.
Each server system may also be connected with a plurality of client systems through a computer network. Each client system may execute an application that connects to the server system over the network for sending read/write requests for accessing data of the storage system. In turn, applications executing on the server system may service the client systems by receiving client system access requests and submitting the access requests to the storage system for execution. To meet demands of high volumes of access requests from multiple client systems, a virtual server may be implemented.
A virtual server may comprise various portions (or the entirety) of two or more server systems and one or more storage systems, whereby the various portions spread among the server and storage systems are used collectively and in conjunction to receive and process access requests from the client systems. The virtual server may provide high availability of service to client systems in accessing storage devices of the storage system(s). For example, each server system within a virtual server may be configured to act collectively to offset any single server failure and/or to share/distribute access-request loads from client systems. While providing data-access service to the client systems, however, the virtual server may encounter health issues regarding its functions/operations or performance. Since components of the virtual server may be distributed among different server and storage systems, monitoring and reporting health issues of the virtual server may prove difficult.